﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using FAS.App_Code;
using System.Drawing.Imaging;
using FAS.SEM.ClasesSEM;
using SEM.SEM.ClasesSEM;

namespace FasGUI
{
    public partial class LogIn : Form
    {
        public LogIn()
        {
            // TODO: Complete member 
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
                
                if(txtID.Text!=""&&txtPassword.Text!=""){

                    if (radioButton1.Checked)
                        validaAlumno();
                    else validaProfesor();
                }
                else{
                    if(txtID.Text=="")
                        this.errorProvider1.SetError(txtID, "Introducir nombre de usuario");
                    if (txtPassword.Text == "")
                        this.errorProvider1.SetError(txtPassword, "Introducir password"); 
                }
            
        }

        private void validaProfesor()
        {
            ProfesorSEM profesor = new ProfesorSEM();
            profesor.setCorreo(this.txtID.Text);
            if (profesor.validaProfesor(this.txtPassword.Text))
            {
                profesor = (ProfesorSEM)new ProfesorSEM().get(profesor.getCorreo());
                switch (profesor.getTipo()) 
                { 
                    case 0:
                        break;
                    case 1:
                        new Inicio(this).Show();
                        this.Hide();
                        break;
                }
            }
            else MessageBox.Show("Error, el profesor no tiene Acceso al SEM");
        }

        private void validaAlumno()
        {
            AlumnoSEM alumno = new AlumnoSEM();
            alumno.setMatricula(this.txtID.Text);
            if (alumno.validaAlumno(this.txtPassword.Text))
            {
                String clave = this.txtClave.Text;
                Boolean bloqueado = new ExamenAlumnoSEM().esBloqueado(clave);
                if (!bloqueado) //entrar a realizar el examen 
                {
                    ExamenAlumnoSEM examen = new ExamenAlumnoSEM();
                    object idExamenAlumno = examen.getIdExamenAlumno(clave, alumno.getMatricula());
                    examen = (ExamenAlumnoSEM)examen.get(idExamenAlumno);
                    MessageBox.Show("acceso");
                }
                else MessageBox.Show("Error: El Examen Esta Bloqueado o No Existe");
            }
            else MessageBox.Show("Error, el alumno no tiene Acceso al SEM");
        }

        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {
            this.txtClave.Visible = false;
            this.lblClave.Visible = false;
        }

        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
            this.txtClave.Visible = true;
            this.lblClave.Visible = true;
        }
    }
}
